 if (first_global_object_name
      || !TREE_PUBLIC (decl)
      || DECL_EXTERNAL (decl)
      || !DECL_NAME (decl)
      || (VAR_P (decl) && DECL_HARD_REGISTER (decl))
      || (TREE_CODE (decl) != FUNCTION_DECL
	  && (!VAR_P (decl)
	      || (DECL_COMMON (decl)
		  && (DECL_INITIAL (decl) == 0
		      || DECL_INITIAL (decl) == error_mark_node)))))
    return;

  /* We win when global object is found, but it is useful to know about weak
     symbol as well so we can produce nicer unique names.  */
  if (DECL_WEAK (decl) || DECL_ONE_ONLY (decl) || flag_shlib)

  (TREE_STATIC (t) || DECL_EXTERNAL (t));

static inline bool
may_be_aliased (const_tree var)
{
  return (TREE_CODE (var) != CONST_DECL
	  && (TREE_PUBLIC (var)
	      || DECL_EXTERNAL (var)
	      || TREE_ADDRESSABLE (var))
	  && !((TREE_STATIC (var) || TREE_PUBLIC (var) || DECL_EXTERNAL (var))
	       && (TREE_READONLY (var)
		   || (TREE_CODE (var) == VAR_DECL
		       && DECL_NONALIASED (var)))));
}


		if(DECL_ONE_ONLY (cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] DECL_ONE_ONLY\n");
		}
		if(TREE_PUBLIC (cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] TREE_PUBLIC\n");
		}
		if(DECL_WEAK (cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] DECL_WEAK\n");	
		}
		if(DECL_EXTERNAL (cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] DECL_EXTERNAL\n");
		}

		if(TREE_ADDRESSABLE (cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] TREE_ADDRESSABLE\n");	
		}
		if(TREE_STATIC (cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] TREE_STATIC\n");
		}

		if(is_global_var(cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] is_global_var\n");
		}

		if(may_be_aliased(cfun->decl)){
			fprintf(stderr, "[MAJIN_INFO] may_be_aliased\n");
		}